package com.accgm.api.db.model.base;

import java.io.Serializable;
import java.sql.ResultSet;
import java.util.Date;

/**
 * 这是accgm_user_message的数据传输对象基类,直接与表对应<br>
 */
public abstract class AccgmUserMessageModelBase  implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 属性:id<br>
     */
    private Integer id;
    /**
     * 属性:右：0 左：1<br>
     * 含义:右：0 左：1<br>
     */
    
    private Integer userId;
    
    private Integer collectLoc;
    /**
     * 属性:耳垂：0 指尖：1 虎口：2 手臂:3<br>
     * 含义:耳垂：0 指尖：1 虎口：2 手臂:3<br>
     */
    private Integer collect;
    /**
     * 属性:饮食时间选择<br>
     * 含义:饮食时间选择<br>
     */
    private String stateTime;
    /**
     * 属性:饮食状态选择<br>
     * 含义:饮食状态选择<br>
     */
    private String state;
    /**
     * 属性:温度<br>
     * 含义:温度<br>
     */
    private String bodyTemperature;
    /**
     * 属性:有创血糖仪1读数<br>
     * 含义:有创血糖仪1读数<br>
     */
    private String bloodSugar1;
    /**
     * 属性:有创血糖仪2读数<br>
     * 含义:有创血糖仪2读数<br>
     */
    private String bloodSugar2;
    /**
     * 属性:有创血糖仪3读数<br>
     * 含义:有创血糖仪3读数<br>
     */
    private String bloodSugar3;
    /**
     * 属性:今天有否吃降血糖藥 N否 Y是<br>
     * 含义:今天有否吃降血糖藥 N否 Y是<br>
     */
    private String isTakeDownSugar;
    /**
     * 属性:今天有否注射胰岛素 N否 Y是<br>
     * 含义:今天有否注射胰岛素 N否 Y是<br>
     */
    private String isInjectInsulin;
    /**
     * 属性:今天有否吃退燒/止痛藥 N否 Y是<br>
     * 含义:今天有否吃退燒/止痛藥 N否 Y是<br>
     */
    private String isTakePainKiller;
    /**
     * 属性:测试前有无做运动<br>
     * 含义:测试前有无做运动<br>
     */
    private String sports;
    /**
     * 属性:数据下载链接<br>
     * 含义:数据下载链接<br>
     */
    private String dataUrl;
    /**
     * 属性:addTime<br>
     */
    private Date addTime;
    /**
     * 属性:updateTime<br>
     */
    private Date updateTime;
    
    private String imei;
    
    private String venderId;
    
    private String deviceId;

    /**
     *  默认构造方法,构造一个默认的AccgmUserMessageModelBase对象
     */
    public AccgmUserMessageModelBase(){
    }

    /**
     *  构造函数
     *  @param rs 数据库查询结果集
     */
    public AccgmUserMessageModelBase(ResultSet rs){
           try{
               this.id = rs.getInt("id");
               this.userId = rs.getInt("userId");
               this.collectLoc = rs.getInt("collectLoc");
               this.collect = rs.getInt("collect");
               this.stateTime = rs.getString("stateTime");
               this.state = rs.getString("state");
               this.bodyTemperature = rs.getString("bodyTemperature");
               this.bloodSugar1 = rs.getString("bloodSugar1");
               this.bloodSugar2 = rs.getString("bloodSugar2");
               this.bloodSugar3 = rs.getString("bloodSugar3");
               this.isTakeDownSugar = rs.getString("isTakeDownSugar");
               this.isInjectInsulin = rs.getString("isInjectInsulin");
               this.isTakePainKiller = rs.getString("isTakePainKiller");
               this.sports = rs.getString("sports");
               this.dataUrl = rs.getString("dataUrl");
               this.addTime = rs.getDate("addTime");
               this.updateTime = rs.getDate("updateTime");
               this.imei = rs.getString("imei");
               this.venderId = rs.getString("venderId");
               this.deviceId = rs.getString("deviceId");
           }catch(Exception e) {
              e.printStackTrace(); 
           }
    }


    public String getImei() {
		return imei;
	}

	public void setImei(String imei) {
		this.imei = imei;
	}

	public String getVenderId() {
		return venderId;
	}

	public void setVenderId(String venderId) {
		this.venderId = venderId;
	}

	public String getDeviceId() {
		return deviceId;
	}

	public void setDeviceId(String deviceId) {
		this.deviceId = deviceId;
	}

	public Integer getUserId() {
		return userId;
	}

	public void setUserId(Integer userId) {
		this.userId = userId;
	}

	/**
     * 设置属性id<br>
     * @param id 待设置的属性id的值
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获取属性id<br>
     * @return 属性id的值
     */
    public Integer getId() {
        return id;
    }

    /**
     * 设置属性右：0 左：1<br>
     * 含义:右：0 左：1<br>
     * @param collectLoc 待设置的属性右：0 左：1的值
     */
    public void setCollectLoc(Integer collectLoc) {
        this.collectLoc = collectLoc;
    }

    /**
     * 获取属性右：0 左：1<br>
     * 含义:右：0 左：1<br>
     * @return 属性右：0 左：1的值
     */
    public Integer getCollectLoc() {
        return collectLoc;
    }

    /**
     * 设置属性耳垂：0 指尖：1 虎口：2 手臂:3<br>
     * 含义:耳垂：0 指尖：1 虎口：2 手臂:3<br>
     * @param collect 待设置的属性耳垂：0 指尖：1 虎口：2 手臂:3的值
     */
    public void setCollect(Integer collect) {
        this.collect = collect;
    }

    /**
     * 获取属性耳垂：0 指尖：1 虎口：2 手臂:3<br>
     * 含义:耳垂：0 指尖：1 虎口：2 手臂:3<br>
     * @return 属性耳垂：0 指尖：1 虎口：2 手臂:3的值
     */
    public Integer getCollect() {
        return collect;
    }

    /**
     * 设置属性饮食时间选择<br>
     * 含义:饮食时间选择<br>
     * @param stateTime 待设置的属性饮食时间选择的值
     */
    public void setStateTime(String stateTime) {
        this.stateTime = stateTime;
    }

    /**
     * 获取属性饮食时间选择<br>
     * 含义:饮食时间选择<br>
     * @return 属性饮食时间选择的值
     */
    public String getStateTime() {
        return stateTime;
    }

    /**
     * 设置属性饮食状态选择<br>
     * 含义:饮食状态选择<br>
     * @param state 待设置的属性饮食状态选择的值
     */
    public void setState(String state) {
        this.state = state;
    }

    /**
     * 获取属性饮食状态选择<br>
     * 含义:饮食状态选择<br>
     * @return 属性饮食状态选择的值
     */
    public String getState() {
        return state;
    }

    /**
     * 设置属性温度<br>
     * 含义:温度<br>
     * @param bodyTemperature 待设置的属性温度的值
     */
    public void setBodyTemperature(String bodyTemperature) {
        this.bodyTemperature = bodyTemperature;
    }

    /**
     * 获取属性温度<br>
     * 含义:温度<br>
     * @return 属性温度的值
     */
    public String getBodyTemperature() {
        return bodyTemperature;
    }

    /**
     * 设置属性有创血糖仪1读数<br>
     * 含义:有创血糖仪1读数<br>
     * @param bloodSugar1 待设置的属性有创血糖仪1读数的值
     */
    public void setBloodSugar1(String bloodSugar1) {
        this.bloodSugar1 = bloodSugar1;
    }

    /**
     * 获取属性有创血糖仪1读数<br>
     * 含义:有创血糖仪1读数<br>
     * @return 属性有创血糖仪1读数的值
     */
    public String getBloodSugar1() {
        return bloodSugar1;
    }

    /**
     * 设置属性有创血糖仪2读数<br>
     * 含义:有创血糖仪2读数<br>
     * @param bloodSugar2 待设置的属性有创血糖仪2读数的值
     */
    public void setBloodSugar2(String bloodSugar2) {
        this.bloodSugar2 = bloodSugar2;
    }

    /**
     * 获取属性有创血糖仪2读数<br>
     * 含义:有创血糖仪2读数<br>
     * @return 属性有创血糖仪2读数的值
     */
    public String getBloodSugar2() {
        return bloodSugar2;
    }

    /**
     * 设置属性有创血糖仪3读数<br>
     * 含义:有创血糖仪3读数<br>
     * @param bloodSugar3 待设置的属性有创血糖仪3读数的值
     */
    public void setBloodSugar3(String bloodSugar3) {
        this.bloodSugar3 = bloodSugar3;
    }

    /**
     * 获取属性有创血糖仪3读数<br>
     * 含义:有创血糖仪3读数<br>
     * @return 属性有创血糖仪3读数的值
     */
    public String getBloodSugar3() {
        return bloodSugar3;
    }

    /**
     * 设置属性今天有否吃降血糖藥 N否 Y是<br>
     * 含义:今天有否吃降血糖藥 N否 Y是<br>
     * @param isTakeDownSugar 待设置的属性今天有否吃降血糖藥 N否 Y是的值
     */
    public void setIsTakeDownSugar(String isTakeDownSugar) {
        this.isTakeDownSugar = isTakeDownSugar;
    }

    /**
     * 获取属性今天有否吃降血糖藥 N否 Y是<br>
     * 含义:今天有否吃降血糖藥 N否 Y是<br>
     * @return 属性今天有否吃降血糖藥 N否 Y是的值
     */
    public String getIsTakeDownSugar() {
        return isTakeDownSugar;
    }

    /**
     * 设置属性今天有否注射胰岛素 N否 Y是<br>
     * 含义:今天有否注射胰岛素 N否 Y是<br>
     * @param isInjectInsulin 待设置的属性今天有否注射胰岛素 N否 Y是的值
     */
    public void setIsInjectInsulin(String isInjectInsulin) {
        this.isInjectInsulin = isInjectInsulin;
    }

    /**
     * 获取属性今天有否注射胰岛素 N否 Y是<br>
     * 含义:今天有否注射胰岛素 N否 Y是<br>
     * @return 属性今天有否注射胰岛素 N否 Y是的值
     */
    public String getIsInjectInsulin() {
        return isInjectInsulin;
    }

    /**
     * 设置属性今天有否吃退燒/止痛藥 N否 Y是<br>
     * 含义:今天有否吃退燒/止痛藥 N否 Y是<br>
     * @param isTakePainKiller 待设置的属性今天有否吃退燒/止痛藥 N否 Y是的值
     */
    public void setIsTakePainKiller(String isTakePainKiller) {
        this.isTakePainKiller = isTakePainKiller;
    }

    /**
     * 获取属性今天有否吃退燒/止痛藥 N否 Y是<br>
     * 含义:今天有否吃退燒/止痛藥 N否 Y是<br>
     * @return 属性今天有否吃退燒/止痛藥 N否 Y是的值
     */
    public String getIsTakePainKiller() {
        return isTakePainKiller;
    }

    /**
     * 设置属性测试前有无做运动<br>
     * 含义:测试前有无做运动<br>
     * @param sports 待设置的属性测试前有无做运动的值
     */
    public void setSports(String sports) {
        this.sports = sports;
    }

    /**
     * 获取属性测试前有无做运动<br>
     * 含义:测试前有无做运动<br>
     * @return 属性测试前有无做运动的值
     */
    public String getSports() {
        return sports;
    }

    /**
     * 设置属性数据下载链接<br>
     * 含义:数据下载链接<br>
     * @param dataUrl 待设置的属性数据下载链接的值
     */
    public void setDataUrl(String dataUrl) {
        this.dataUrl = dataUrl;
    }

    /**
     * 获取属性数据下载链接<br>
     * 含义:数据下载链接<br>
     * @return 属性数据下载链接的值
     */
    public String getDataUrl() {
        return dataUrl;
    }

    /**
     * 设置属性addTime<br>
     * @param addTime 待设置的属性addTime的值
     */
    public void setAddTime(Date addTime) {
        this.addTime = addTime;
    }

    /**
     * 获取属性addTime<br>
     * @return 属性addTime的值
     */
    public Date getAddTime() {
        return addTime;
    }

    /**
     * 设置属性updateTime<br>
     * @param updateTime 待设置的属性updateTime的值
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 获取属性updateTime<br>
     * @return 属性updateTime的值
     */
    public Date getUpdateTime() {
        return updateTime;
    }


    /**
     * 比较两个对象在逻辑上是否相等
     * @see java.lang.Object#equals(java.lang.Object)
     */
    public boolean equals(Object other) {
        if (this == other) {
            return true;
        }
        if (!(other instanceof AccgmUserMessageModelBase)) {
            return false;
        }

        final AccgmUserMessageModelBase otherModel = (AccgmUserMessageModelBase) other;
        if (getId()!=null && !getId().equals(otherModel.getId())) {
            return false;
        }
        return true;
    }

    /**
     * 根据主键生成HashCode
     * @see java.lang.Object#hashCode()
     */
    public int hashCode() {
        StringBuffer buffer = new StringBuffer();
        buffer.append('|').append(id);
        return buffer.toString().hashCode();
    }
}
